package com.warmheart.entity.access;


import com.warmheart.base.entity.BaseEntity;
import com.warmheart.builder.access.AccessLogCoBuilder;
import com.warmheart.builder.access.AccessLogRsBuilder;

/**
 * 
 * @ClassName: AccessLog
 * @Description: 访问记录实体类，对应表名称为tb_access_log
 *               温馨提示：不要修改该实体类的任何字段
 * @author ZhangJianyang
 * @date 2025年06月16日 下午13:05:35
 *
 */
public class AccessLog extends BaseEntity<AccessLogCoBuilder, AccessLogRsBuilder> {

	private static final long serialVersionUID = 1L;
	
	/**
     * 
     * @Title: tableName
     * @Description: 表名称
     * @author ZhangJianyang
     * @return
     */
    @Override
    public String tableName() {
        return "tb_access_log";
    }

    public AccessLogCoBuilder coBuilder() {
        return new AccessLogCoBuilder(this);
    }

    public AccessLogRsBuilder rsBuilder() {
        return new AccessLogRsBuilder(this);
    }

    /**
     * 用户ID
     */
    private Integer userId;

    /**
     * 资源类型
     */
    private String resourceType;

    /**
     * 资源ID
     */
    private Integer resourceId;

    /**
     * 操作类型
     */
    private String action;

    /**
     * IP地址
     */
    private String ipAddress;

    /**
     * 用户代理
     */
    private String userAgent;

    /**
     * 操作详情
     */
    private String details;

    /**
     * 
     * @Title: getUserId
     * @Description: 用户IDgetter方法
     * @author ZhangJianyang
     * @return
     */
    public Integer getUserId(){
        return userId;
    }
    
    /**
     * 
     * @Title: setUserId
     * @Description: 用户IDsetter方法
     * @author ZhangJianyang
     * @param userId
     */
    public void setUserId(Integer userId){
        this.userId = userId;
    }

    /**
     * 
     * @Title: getResourceType
     * @Description: 资源类型getter方法
     * @author ZhangJianyang
     * @return
     */
    public String getResourceType(){
        return resourceType;
    }
    
    /**
     * 
     * @Title: setResourceType
     * @Description: 资源类型setter方法
     * @author ZhangJianyang
     * @param resourceType
     */
    public void setResourceType(String resourceType){
        this.resourceType = resourceType;
    }

    /**
     * 
     * @Title: getResourceId
     * @Description: 资源IDgetter方法
     * @author ZhangJianyang
     * @return
     */
    public Integer getResourceId(){
        return resourceId;
    }
    
    /**
     * 
     * @Title: setResourceId
     * @Description: 资源IDsetter方法
     * @author ZhangJianyang
     * @param resourceId
     */
    public void setResourceId(Integer resourceId){
        this.resourceId = resourceId;
    }

    /**
     * 
     * @Title: getAction
     * @Description: 操作类型getter方法
     * @author ZhangJianyang
     * @return
     */
    public String getAction(){
        return action;
    }
    
    /**
     * 
     * @Title: setAction
     * @Description: 操作类型setter方法
     * @author ZhangJianyang
     * @param action
     */
    public void setAction(String action){
        this.action = action;
    }

    /**
     * 
     * @Title: getIpAddress
     * @Description: IP地址getter方法
     * @author ZhangJianyang
     * @return
     */
    public String getIpAddress(){
        return ipAddress;
    }
    
    /**
     * 
     * @Title: setIpAddress
     * @Description: IP地址setter方法
     * @author ZhangJianyang
     * @param ipAddress
     */
    public void setIpAddress(String ipAddress){
        this.ipAddress = ipAddress;
    }

    /**
     * 
     * @Title: getUserAgent
     * @Description: 用户代理getter方法
     * @author ZhangJianyang
     * @return
     */
    public String getUserAgent(){
        return userAgent;
    }
    
    /**
     * 
     * @Title: setUserAgent
     * @Description: 用户代理setter方法
     * @author ZhangJianyang
     * @param userAgent
     */
    public void setUserAgent(String userAgent){
        this.userAgent = userAgent;
    }

    /**
     * 
     * @Title: getDetails
     * @Description: 操作详情getter方法
     * @author ZhangJianyang
     * @return
     */
    public String getDetails(){
        return details;
    }
    
    /**
     * 
     * @Title: setDetails
     * @Description: 操作详情setter方法
     * @author ZhangJianyang
     * @param details
     */
    public void setDetails(String details){
        this.details = details;
    }
}
